package itheima.edu.info.manager.dao;

import itheima.edu.info.manager.domain.Teacher;

//库管
public class TeacherDao {
    //1.创建存储学生对象的容器
    private static Teacher[] teas=new Teacher[5];

    public boolean addTeacher(Teacher tea) {
        //2.添加老师到数组
        //2.1定义变量index=-1，假设数组已经全部存满，没有null元素
        int index=-1;
        //2.2遍历数组，取出每一个 元素，判断是否为null
        for (int i = 0; i < teas.length; i++) {
            Teacher teacher=teas[i];
            if (teacher==null){
                index=i;
                //如果为null，让index变量记录当前索引位置，并使用break结束循环遍历
                break;
            }
        }
        //3.将存储结果返回给方法调用者
        if (index==-1){
            //装满了
            return false;
        }else{
            //没有装满，正常添加，返回true
            teas[index]=tea;
            return true;
        }
    }

    public Teacher[] findAllTeacher() {
        return teas;
    }

    public void deleteTeacherById(String delId) {
        //1.查找id在容器中所在的索引位置
        int index = getIndex(delId);
        //2.将该索引位置，使用null元素覆盖
        teas[index]=null;
    }

    public int getIndex(String id) {
        int index=-1;
        for (int i = 0; i < teas.length; i++) {
            Teacher tea=teas[i];
            if (tea!=null&&tea.getId().equals(id)){
                index=i;
                break;
            }
        }
        return index;
    }


    public void updateTeacher(String updateId, Teacher newTea) {
        //1.查找updateId,在容器中的索引位置
        int index=getIndex(updateId);
        //2.将该索引位置，使用新的学生对象替换
        teas[index]=newTea;
    }
}
